PERIGO

Caracteres invisíveis: o truque que faz golpe passar por filtro de e-mail

Caracteres invisíveis do Unicode são usados em golpes digitais
Divulgação
Caracteres invisíveis o truque que faz golpe passar por filtro de e-mail sem ser visto
Caracteres invisíveis o truque que faz golpe passar por filtro de e-mail sem ser visto

Existe uma categoria de caracteres no padrão Unicode que ocupa posição dentro de um texto e não desenha absolutamente nada na tela. Para o computador, são conteúdo legítimo, contados e processados como qualquer letra. Para quem lê, não existem. Foram criados por motivos técnicos banais, como separar palavras em idiomas asiáticos ou marcar onde uma linha pode quebrar, mas viraram ferramenta de quem aplica golpe, justamente porque exploram a diferença entre o que a máquina lê e o que a pessoa vê.

Um caractere que a máquina lê e o olho não

A família é grande e cada membro tem uma largura diferente. O espaço de largura zero não ocupa nada. O hífen suave só aparece quando a palavra precisa ser quebrada no fim de uma linha. O preenchedor do bloco Hangul ocupa a largura de uma letra inteira sem imprimir nada. Ferramentas como O Espaço Invisível catalogam esses códigos e permitem copiá-los, uso que na maior parte das vezes é inofensivo: separar linhas de biografia em rede social, criar nome de perfil sem texto aparente, mandar mensagem em branco.

O problema não está no caractere. Está no fato de que a maior parte dos sistemas de segurança compara texto literal, e texto literal é exatamente o que esses caracteres conseguem quebrar.

Como um hífen que ninguém vê derruba um filtro de e-mail

Sistemas de proteção de caixa postal trabalham, em boa medida, procurando padrões. Uma expressão como "sua senha está prestes a expirar" acende alerta porque aparece em milhares de campanhas de roubo de credencial.

Pesquisadores de segurança documentaram campanhas que resolvem isso de forma elegante e simples: inserir um hífen suave entre cada letra da frase. Para o destinatário, o assunto do e-mail chega escrito normalmente. Para o filtro, a sequência de letras deixou de existir, porque entre elas há agora um caractere que a lista de padrões não previa.

A técnica foi observada em campanhas globais, aplicada no assunto codificado da mensagem e também no corpo do texto, combinada com uma página falsa de login hospedada em domínio comprometido. O detalhe que torna o método difícil de combater é que ele não altera nada do que a vítima enxerga. Não há erro de português, não há símbolo estranho, não há sinal visível de adulteração.

Variações do mesmo princípio usam o espaço de largura zero e os chamados unificadores, inseridos dentro de endereços de internet. O link continua funcionando quando clicado, mas o padrão que o sistema de segurança procurava foi partido ao meio.

O caso mais engenhoso: código escondido dentro de caracteres coreanos

A aplicação mais sofisticada documentada até agora não esconde palavras, esconde programas inteiros.

A técnica converte cada caractere de um código malicioso em sua representação binária, aquela sequência de zeros e uns que está na base de toda informação digital. Em seguida, substitui cada zero e cada um por dois caracteres invisíveis diferentes do bloco Hangul, o alfabeto coreano. O resultado é um arquivo que, aberto em qualquer editor, parece conter espaço em branco e nada mais, mas que um navegador executa normalmente.

O método foi divulgado publicamente por um desenvolvedor como demonstração técnica e, em poucos meses, já aparecia em ataques reais. É um retrato de como pesquisa de segurança vira arma rapidamente quando a barreira de implementação é baixa.

Vale o registro pela ironia: o caractere usado nessa técnica é o mesmo que milhões de pessoas copiam diariamente para deixar a bio do Instagram organizada.

Por que os filtros demoraram a reagir

Código Nome Uso legítimo e uso desviado
U+200B Espaço de largura zero Marca onde uma linha pode quebrar. Desviado para partir palavras dentro de endereços e escapar de filtros.
U+00AD Hífen suave Divide palavra no fim da linha. Desviado para quebrar expressões que acionam alerta de segurança.
U+3164 Preenchedor Hangul Preenche lacuna em sílaba coreana. Desviado para codificar programas inteiros em texto aparentemente vazio.
U+200D Unificador de largura zero Combina emojis em um só símbolo. Desviado para ofuscar palavras-chave em código.


A resposta técnica tem nome: normalização. Antes de comparar um texto com uma lista de padrões suspeitos, o sistema precisa remover caracteres que não imprimem nada e reduzir tudo a uma forma canônica. Sem esse passo, a comparação acontece sobre um texto que a vítima nunca vai ver.

Muitos sistemas de proteção foram desenhados quando essa possibilidade era teórica, e aplicavam a normalização apenas ao corpo da mensagem, deixando de fora assunto, remetente e cabeçalhos. Foi exatamente por essa brecha que as campanhas mais recentes entraram.

O mesmo problema reapareceu em uma frente nova. Assistentes de inteligência artificial processam o texto que recebem, inclusive o que é invisível na tela. Instruções ocultas dentro de um documento aparentemente comum podem ser lidas e obedecidas pelo sistema sem que o usuário perceba, e a defesa é a mesma: normalizar antes de interpretar.

O que dá para fazer na prática

Para quem não trabalha com segurança, quatro hábitos cobrem a maior parte do risco.

  • Desconfie da urgência, não da aparência. Mensagem que fala em senha vencendo, conta bloqueada ou entrega parada é o gatilho mais usado. Nesses casos, não clique no link: abra o site ou o aplicativo por conta própria e confira lá.
  • Leia e-mails suspeitos em texto simples. A maioria dos programas de e-mail permite alternar a exibição. No modo simples, o disfarce costuma cair, porque a formatação que sustenta a fachada desaparece.
  • Não confie na correspondência visual do endereço. Um endereço pode parecer idêntico ao verdadeiro e apontar para outro lugar. Passe o cursor sobre o link e leia o destino real antes de clicar.
  • Use um detector quando algo não bater. Se um campo recusa um dado que parece correto, ou se um texto colado se comporta de forma estranha, vale passar o conteúdo por um verificador de caracteres invisíveis. Ele mostra o que está ali e em que posição.

Esse último caso é mais comum do que parece fora do contexto de golpe. Texto copiado de páginas da internet, de planilhas ou de assistentes de inteligência artificial frequentemente carrega marcadores invisíveis que quebram formulários, sistemas de cadastro e importações de dados, sem que o usuário entenda a causa.

Nem todo caractere invisível é ameaça

Convém encerrar com a proporção correta. Esses caracteres estão no padrão Unicode por razões legítimas e são usados por milhões de pessoas para finalidades triviais: organizar uma biografia em rede social, criar apelido sem texto visível, enviar mensagem em branco.

O que muda é o contexto. O mesmo símbolo que arruma o espaçamento de um perfil pode partir uma palavra dentro de um endereço fraudulento. A conclusão prática não é evitar o caractere, e sim entender que existe uma diferença entre o que a tela mostra e o que o sistema processa, e que quem aplica golpe conhece essa diferença há bastante tempo.

Leia mais sobre


Encontrou algum erro? Entre em contato